package com.dhcc.sds.standard.service;

import cn.hutool.core.lang.tree.Tree;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.plugins.Page;
import com.dhcc.core.framework.base.service.IBaseService;
import com.dhcc.core.framework.result.node.ZTreeNode;
import com.dhcc.sds.standard.dto.TreeNode;
import com.dhcc.sds.standard.entity.SdsStandSourceEntity;

import java.util.List;
import java.util.Map;

/**
 * 数据源定义表数据服务层接口
 *
 * @author lyh
 * @ClassName: ISdsStandDataSourceService
 * @Description: TODO
 */
public interface ISdsStandDataSourceService extends IBaseService<SdsStandSourceEntity> {

    List<SdsStandSourceEntity> page(Page<SdsStandSourceEntity> page, Map<String, Object> map);

    List<SdsStandSourceEntity> list(Long parentId);

    List<ZTreeNode> getEntityTree();

    void importData(List<List<Object>> all, Long parentId);

    String getDataNameById(Long id);

    List<SdsStandSourceEntity> exportData();

    JSONObject getDataMap();

    JSONArray getDataDescMap();

    List<TreeNode> getDataSourceTree(Long parentId);

    List<Tree<Long>> getDataSourceTree2();
}
